Processing a request from a user to sync data with a central data repository can be performed using different sync protocols. Different sync protocols may be desirable for different types of network connections, such as an over the air connection or a wired connection. Also, the scalability of the different sync protocols can be affected by the complexity of the behind-the-scene details of the sync protocols that regulate how and when to sync the requested data. Further, different client processes may be required to perform various integrity checks before communications can be allowed with the sync server.